package com.xique.door.project.sfm.biz.service;

import com.xique.common.core.web.domain.AjaxResult;
import com.xique.door.project.sfm.bean.request.SfmInsertPeopleRequest;
import com.xique.door.project.sfm.bean.request.SfmOpenDoorRequest;
import com.xique.door.project.sfm.bean.request.SfmSelectHouseRequest;

public interface ISfmHomeBizService {

    /**
     * 查询省份
     * @return
     */
    AjaxResult getProvince();

    /**
     * 查询城市
     * @param provinceNo
     * @return
     */
    AjaxResult getCityByProvinceNo(String provinceNo);

    /**
     * 查询省份城市内社区
     * @param provinceNo
     * @param cityNo
     * @return
     */
    AjaxResult getCommunityByCity(String provinceNo, String cityNo);

    /**
     * 查询社区所有楼栋
     * @param communityNo
     * @return
     */
    AjaxResult getBuildingByCommunityNo(String communityNo);

    /**
     * 查询楼栋内所有房屋
     * @param buildingNo
     * @param communityNo
     * @return
     */
    AjaxResult getHouseByBuildingNo(String buildingNo, String communityNo);

    /**
     * 查询房屋内住户
     * @param houseNo
     * @param communityNo
     * @param pageindex
     * @param pagesize
     * @return
     */
    AjaxResult getListByHouseNo(String houseNo, String communityNo, String pageindex, String pagesize);

    /**
     * 添加住户信息
     * @param request
     * @return
     */
    AjaxResult insertPeople(SfmInsertPeopleRequest request);

    /**
     * 删除住户信息
     * @param peopleNo
     * @param communityNo
     * @return
     */
    AjaxResult deletePeople(String peopleNo, String communityNo);

    /**
     * 获取设备列表
     * @param peopleNo
     * @param communityNo
     * @param pageindex
     * @param pagesize
     * @return
     */
    AjaxResult getDeviceList(String peopleNo, String communityNo, String pageindex, String pagesize);

    /**
     * 设备开门
     * @param request
     * @return
     */
    AjaxResult openDoor(SfmOpenDoorRequest request);

    /**
     * 选择房屋
     * @param request
     * @return
     */
    AjaxResult selectHouse(SfmSelectHouseRequest request);

    /**
     * 获取用户信息
     * @param phone
     * @return
     */
    AjaxResult getUserInfo(String phone);
}
